/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package dao;

import model.Disponibilidad;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;

/**
 *
 * @author Silvita
 */
public class DisponibilidadDAO {
    
    /**
     * Permite obtener el tipo de disponibilidad dado el id de la disponibilidad.
     * @param idDisp {@code int} id de disponibilidad.
     * @return {@code Disponibilidad} un objeto de clase Disponibilidad.
     * @throws Exception @code HibernateException} si no se pudo conectar u obtener datos de la base.
     */
    public Disponibilidad obtenerDisponibilidadPorId(int idDisp) throws Exception {
        MyFactory mf = new MyFactory();
        Session s = mf.getSf().openSession();

        Disponibilidad disp = new Disponibilidad();
        try{
            disp = (Disponibilidad)s.createCriteria(Disponibilidad.class).add(Restrictions.eq("idDisponibilidad", new Integer(idDisp))).uniqueResult();
        } 
        catch(Exception e){
            throw new Exception("Error: " + e.getMessage());
        } 
        finally {
            s.close();
            mf.getSf().close();
        }
        if(disp==null){
            disp.setIdDisponibilidad(0);
        }
        
        return disp;
    }
    
}
